<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>构造函数中的作用域的使用形态</title>
</head>
<body>
    <script>
        function Show(){
            let a = 1;
            this.test = function(){
                console.log(++a);
            }
        };
        // 构造函数每创建一个新的对象，就会开辟一个新的内存空间，多次调用对象中的方法可以实现累加
        let show1 = new Show();
        show1.test();
        show1.test();
        show1.test();
        show1.test();

        let show2 = new Show();
        show2.test();
        show2.test();
        show2.test();



        // 构造函数内部的实现原理
        // function Show(){
        //     let a = 1;
        //     let test = function(){
        //         console.log(++a);
        //     };
        //     return {
        //         test:test
        //     }
        // }
        // let show3 = new Show();
        // show3.test();
        // show3.test();
        // show3.test();
        // show3.test();
    </script>
</body>
</html>